.TH E1432_GET_XXX_LIMITS 3 E1432
.SH NAME
e1432_get_xxx_limits \- Get parameter limits
.IX e1432_get_arm_time_interval_limits(3) 3
.IX e1432_get_avg_number_limits(3) 3
.IX e1432_get_avg_update_limits(3) 3
.IX e1432_get_avg_weight_limits(3) 3
.IX e1432_get_blocksize_limits(3) 3
.IX e1432_get_cal_dac_limits(3) 3
.IX e1432_get_cal_voltage_limits(3) 3
.IX e1432_get_center_freq_limits(3) 3
.IX e1432_get_clock_freq_limits(3) 3
.IX e1432_get_decimation_undersamp_limits(3) 3
.IX e1432_get_delta_order_limits(3) 3
.IX e1432_get_fifo_size_limits(3) 3
.IX e1432_get_filter_settling_time_limits(3) 3
.IX e1432_get_internal_debug_limits(3) 3
.IX e1432_get_interrupt_priority_limits(3) 3
.IX e1432_get_max_order_limits(3) 3
.IX e1432_get_meas_time_length_limits(3) 3
.IX e1432_get_overlap_limits(3) 3
.IX e1432_get_peak_decay_time_limits(3) 3
.IX e1432_get_rms_avg_time_limits(3) 3
.IX e1432_get_rms_decay_time_limits(3) 3
.IX e1432_get_span_limits(3) 3
.IX e1432_get_trigger_delay_limits(3) 3
.IX e1432_get_triggers_per_arm_limits(3) 3
.IX e1432_get_xfer_size_limits(3) 3
.IX e1432_get_amp_scale_limits(3) 3
.IX e1432_get_coupling_freq_limits(3) 3
.IX e1432_get_duty_cycle_limits(3) 3
.IX e1432_get_filter_freq_limits(3) 3
.IX e1432_get_input_offset_limits(3) 3
.IX e1432_get_pre_arm_rpm_limits(3) 3
.IX e1432_get_ramp_rate_limits(3) 3
.IX e1432_get_range_limits(3) 3
.IX e1432_get_range_charge_limits(3) 3
.IX e1432_get_range_mike_limits(3) 3
.IX e1432_get_rpm_high_limits(3) 3
.IX e1432_get_rpm_interval_limits(3) 3
.IX e1432_get_rpm_low_limits(3) 3
.IX e1432_get_rpm_smoothing_limits(3) 3
.IX e1432_get_sine_freq_limits(3) 3
.IX e1432_get_sine_phase_limits(3) 3
.IX e1432_get_source_blocksize_limits(3) 3
.IX e1432_get_source_centerfreq_limits(3) 3
.IX e1432_get_source_seed_limits(3) 3
.IX e1432_get_source_span_limits(3) 3
.IX e1432_get_srcbuffer_size_limits(3) 3
.IX e1432_get_tach_decimate_limits(3) 3
.IX e1432_get_tach_holdoff_limits(3) 3
.IX e1432_get_tach_max_time_limits(3) 3
.IX e1432_get_tach_ppr_limits(3) 3
.IX e1432_get_trigger_level_limits(3) 3
.SH SYNOPSIS
.cS
SHORTSIZ16 e1432_get_arm_time_interval_limits(E1432ID hw,
                                              SHORTSIZ16 ID,
                                              FLOATSIZ32 *min,
                                              FLOATSIZ32 *max,
                                              FLOATSIZ32 *def,
                                              FLOATSIZ32 *step)
SHORTSIZ16 e1432_get_avg_number_limits(E1432ID hw,
                                       SHORTSIZ16 ID,
                                       FLOATSIZ32 *min,
                                       FLOATSIZ32 *max,
                                       FLOATSIZ32 *def,
                                       FLOATSIZ32 *step)
SHORTSIZ16 e1432_get_avg_update_limits(E1432ID hw,
                                       SHORTSIZ16 ID,
                                       FLOATSIZ32 *min,
                                       FLOATSIZ32 *max,
                                       FLOATSIZ32 *def,
                                       FLOATSIZ32 *step)
SHORTSIZ16 e1432_get_avg_weight_limits(E1432ID hw,
                                       SHORTSIZ16 ID,
                                       FLOATSIZ32 *min,
                                       FLOATSIZ32 *max,
                                       FLOATSIZ32 *def,
                                       FLOATSIZ32 *step)
SHORTSIZ16 e1432_get_blocksize_limits(E1432ID hw,
                                      SHORTSIZ16 ID,
                                      FLOATSIZ32 *min,
                                      FLOATSIZ32 *max,
                                      FLOATSIZ32 *def,
                                      FLOATSIZ32 *step)
SHORTSIZ16 e1432_get_cal_dac_limits(E1432ID hw,
                                    SHORTSIZ16 ID,
                                    FLOATSIZ32 *min,
                                    FLOATSIZ32 *max,
                                    FLOATSIZ32 *def,
                                    FLOATSIZ32 *step)
SHORTSIZ16 e1432_get_cal_voltage_limits(E1432ID hw,
                                        SHORTSIZ16 ID,
                                        FLOATSIZ32 *min,
                                        FLOATSIZ32 *max,
                                        FLOATSIZ32 *def,
                                        FLOATSIZ32 *step)
SHORTSIZ16 e1432_get_center_freq_limits(E1432ID hw,
                                        SHORTSIZ16 ID,
                                        FLOATSIZ32 *min,
                                        FLOATSIZ32 *max,
                                        FLOATSIZ32 *def,
                                        FLOATSIZ32 *step)
SHORTSIZ16 e1432_get_clock_freq_limits(E1432ID hw,
                                       SHORTSIZ16 ID,
                                       FLOATSIZ32 *min,
                                       FLOATSIZ32 *max,
                                       FLOATSIZ32 *def,
                                       FLOATSIZ32 *step)
SHORTSIZ16 e1432_get_decimation_undersamp_limits(E1432ID hw,
                                                 SHORTSIZ16 ID,
                                                 FLOATSIZ32 *min,
                                                 FLOATSIZ32 *max,
                                                 FLOATSIZ32 *def,
                                                 FLOATSIZ32 *step)
SHORTSIZ16 e1432_get_delta_order_limits(E1432ID hw,
                                        SHORTSIZ16 ID,
                                        FLOATSIZ32 *min,
                                        FLOATSIZ32 *max,
                                        FLOATSIZ32 *def,
                                        FLOATSIZ32 *step)
SHORTSIZ16 e1432_get_fifo_size_limits(E1432ID hw,
                                      SHORTSIZ16 ID,
                                      FLOATSIZ32 *min,
                                      FLOATSIZ32 *max,
                                      FLOATSIZ32 *def,
                                      FLOATSIZ32 *step)
SHORTSIZ16 e1432_get_filter_settling_time_limits(E1432ID hw,
                                                 SHORTSIZ16 ID,
                                                 FLOATSIZ32 *min,
                                                 FLOATSIZ32 *max,
                                                 FLOATSIZ32 *def,
                                                 FLOATSIZ32 *step)
SHORTSIZ16 e1432_get_internal_debug_limits(E1432ID hw,
                                           SHORTSIZ16 ID,
                                           FLOATSIZ32 *min,
                                           FLOATSIZ32 *max,
                                           FLOATSIZ32 *def,
                                           FLOATSIZ32 *step)
SHORTSIZ16 e1432_get_interrupt_priority_limits(E1432ID hw,
                                               SHORTSIZ16 ID,
                                               FLOATSIZ32 *min,
                                               FLOATSIZ32 *max,
                                               FLOATSIZ32 *def,
                                               FLOATSIZ32 *step)
SHORTSIZ16 e1432_get_max_order_limits(E1432ID hw,
                                      SHORTSIZ16 ID,
                                      FLOATSIZ32 *min,
                                      FLOATSIZ32 *max,
                                      FLOATSIZ32 *def,
                                      FLOATSIZ32 *step)
SHORTSIZ16 e1432_get_meas_time_length_limits(E1432ID hw,
                                             SHORTSIZ16 ID,
                                             FLOATSIZ32 *min,
                                             FLOATSIZ32 *max,
                                             FLOATSIZ32 *def,
                                             FLOATSIZ32 *step)
SHORTSIZ16 e1432_get_overlap_limits(E1432ID hw,
                                    SHORTSIZ16 ID,
                                    FLOATSIZ32 *min,
                                    FLOATSIZ32 *max,
                                    FLOATSIZ32 *def,
                                    FLOATSIZ32 *step)
SHORTSIZ16 e1432_get_peak_decay_time_limits(E1432ID hw,
                                            SHORTSIZ16 ID,
                                            FLOATSIZ32 *min,
                                            FLOATSIZ32 *max,
                                            FLOATSIZ32 *def,
                                            FLOATSIZ32 *step)
SHORTSIZ16 e1432_get_rms_avg_time_limits(E1432ID hw,
                                         SHORTSIZ16 ID,
                                         FLOATSIZ32 *min,
                                         FLOATSIZ32 *max,
                                         FLOATSIZ32 *def,
                                         FLOATSIZ32 *step)
SHORTSIZ16 e1432_get_rms_decay_time_limits(E1432ID hw,
                                           SHORTSIZ16 ID,
                                           FLOATSIZ32 *min,
                                           FLOATSIZ32 *max,
                                           FLOATSIZ32 *def,
                                           FLOATSIZ32 *step)
SHORTSIZ16 e1432_get_span_limits(E1432ID hw,
                                 SHORTSIZ16 ID,
                                 FLOATSIZ32 *min,
                                 FLOATSIZ32 *max,
                                 FLOATSIZ32 *def,
                                 FLOATSIZ32 *step)
SHORTSIZ16 e1432_get_trigger_delay_limits(E1432ID hw,
                                          SHORTSIZ16 ID,
                                          FLOATSIZ32 *min,
                                          FLOATSIZ32 *max,
                                          FLOATSIZ32 *def,
                                          FLOATSIZ32 *step)
SHORTSIZ16 e1432_get_triggers_per_arm_limits(E1432ID hw,
                                             SHORTSIZ16 ID,
                                             FLOATSIZ32 *min,
                                             FLOATSIZ32 *max,
                                             FLOATSIZ32 *def,
                                             FLOATSIZ32 *step)
SHORTSIZ16 e1432_get_xfer_size_limits(E1432ID hw,
                                      SHORTSIZ16 ID,
                                      FLOATSIZ32 *min,
                                      FLOATSIZ32 *max,
                                      FLOATSIZ32 *def,
                                      FLOATSIZ32 *step)
SHORTSIZ16 e1432_get_amp_scale_limits(E1432ID hw,
                                      SHORTSIZ16 ID,
                                      FLOATSIZ32 *min,
                                      FLOATSIZ32 *max,
                                      FLOATSIZ32 *def,
                                      FLOATSIZ32 *step)
SHORTSIZ16 e1432_get_coupling_freq_limits(E1432ID hw,
                                          SHORTSIZ16 ID,
                                          FLOATSIZ32 *min,
                                          FLOATSIZ32 *max,
                                          FLOATSIZ32 *def,
                                          FLOATSIZ32 *step)
SHORTSIZ16 e1432_get_duty_cycle_limits(E1432ID hw,
                                       SHORTSIZ16 ID,
                                       FLOATSIZ32 *min,
                                       FLOATSIZ32 *max,
                                       FLOATSIZ32 *def,
                                       FLOATSIZ32 *step)
SHORTSIZ16 e1432_get_filter_freq_limits(E1432ID hw,
                                        SHORTSIZ16 ID,
                                        FLOATSIZ32 *min,
                                        FLOATSIZ32 *max,
                                        FLOATSIZ32 *def,
                                        FLOATSIZ32 *step)
SHORTSIZ16 e1432_get_input_offset_limits(E1432ID hw,
                                         SHORTSIZ16 ID,
                                         FLOATSIZ32 *min,
                                         FLOATSIZ32 *max,
                                         FLOATSIZ32 *def,
                                         FLOATSIZ32 *step)
SHORTSIZ16 e1432_get_pre_arm_rpm_limits(E1432ID hw,
                                        SHORTSIZ16 ID,
                                        FLOATSIZ32 *min,
                                        FLOATSIZ32 *max,
                                        FLOATSIZ32 *def,
                                        FLOATSIZ32 *step)
SHORTSIZ16 e1432_get_ramp_rate_limits(E1432ID hw,
                                      SHORTSIZ16 ID,
                                      FLOATSIZ32 *min,
                                      FLOATSIZ32 *max,
                                      FLOATSIZ32 *def,
                                      FLOATSIZ32 *step)
SHORTSIZ16 e1432_get_range_limits(E1432ID hw,
                                  SHORTSIZ16 ID,
                                  FLOATSIZ32 *min,
                                  FLOATSIZ32 *max,
                                  FLOATSIZ32 *def,
                                  FLOATSIZ32 *step)
SHORTSIZ16 e1432_get_range_charge_limits(E1432ID hw,
                                         SHORTSIZ16 ID,
                                         FLOATSIZ32 *min,
                                         FLOATSIZ32 *max,
                                         FLOATSIZ32 *def,
                                         FLOATSIZ32 *step)
SHORTSIZ16 e1432_get_range_mike_limits(E1432ID hw,
                                       SHORTSIZ16 ID,
                                       FLOATSIZ32 *min,
                                       FLOATSIZ32 *max,
                                       FLOATSIZ32 *def,
                                       FLOATSIZ32 *step)
SHORTSIZ16 e1432_get_rpm_high_limits(E1432ID hw,
                                     SHORTSIZ16 ID,
                                     FLOATSIZ32 *min,
                                     FLOATSIZ32 *max,
                                     FLOATSIZ32 *def,
                                     FLOATSIZ32 *step)
SHORTSIZ16 e1432_get_rpm_interval_limits(E1432ID hw,
                                         SHORTSIZ16 ID,
                                         FLOATSIZ32 *min,
                                         FLOATSIZ32 *max,
                                         FLOATSIZ32 *def,
                                         FLOATSIZ32 *step)
SHORTSIZ16 e1432_get_rpm_low_limits(E1432ID hw,
                                    SHORTSIZ16 ID,
                                    FLOATSIZ32 *min,
                                    FLOATSIZ32 *max,
                                    FLOATSIZ32 *def,
                                    FLOATSIZ32 *step)
SHORTSIZ16 e1432_get_rpm_smoothing_limits(E1432ID hw,
                                          SHORTSIZ16 ID,
                                          FLOATSIZ32 *min,
                                          FLOATSIZ32 *max,
                                          FLOATSIZ32 *def,
                                          FLOATSIZ32 *step)
SHORTSIZ16 e1432_get_sine_freq_limits(E1432ID hw,
                                      SHORTSIZ16 ID,
                                      FLOATSIZ32 *min,
                                      FLOATSIZ32 *max,
                                      FLOATSIZ32 *def,
                                      FLOATSIZ32 *step)
SHORTSIZ16 e1432_get_sine_phase_limits(E1432ID hw,
                                       SHORTSIZ16 ID,
                                       FLOATSIZ32 *min,
                                       FLOATSIZ32 *max,
                                       FLOATSIZ32 *def,
                                       FLOATSIZ32 *step)
SHORTSIZ16 e1432_get_source_blocksize_limits(E1432ID hw,
                                             SHORTSIZ16 ID,
                                             FLOATSIZ32 *min,
                                             FLOATSIZ32 *max,
                                             FLOATSIZ32 *def,
                                             FLOATSIZ32 *step)
SHORTSIZ16 e1432_get_source_centerfreq_limits(E1432ID hw,
                                              SHORTSIZ16 ID,
                                              FLOATSIZ32 *min,
                                              FLOATSIZ32 *max,
                                              FLOATSIZ32 *def,
                                              FLOATSIZ32 *step)
SHORTSIZ16 e1432_get_source_seed_limits(E1432ID hw,
                                        SHORTSIZ16 ID,
                                        FLOATSIZ32 *min,
                                        FLOATSIZ32 *max,
                                        FLOATSIZ32 *def,
                                        FLOATSIZ32 *step)
SHORTSIZ16 e1432_get_source_span_limits(E1432ID hw,
                                        SHORTSIZ16 ID,
                                        FLOATSIZ32 *min,
                                        FLOATSIZ32 *max,
                                        FLOATSIZ32 *def,
                                        FLOATSIZ32 *step)
SHORTSIZ16 e1432_get_srcbuffer_size_limits(E1432ID hw,
                                           SHORTSIZ16 ID,
                                           FLOATSIZ32 *min,
                                           FLOATSIZ32 *max,
                                           FLOATSIZ32 *def,
                                           FLOATSIZ32 *step)
SHORTSIZ16 e1432_get_tach_decimate_limits(E1432ID hw,
                                          SHORTSIZ16 ID,
                                          FLOATSIZ32 *min,
                                          FLOATSIZ32 *max,
                                          FLOATSIZ32 *def,
                                          FLOATSIZ32 *step)
SHORTSIZ16 e1432_get_tach_holdoff_limits(E1432ID hw,
                                         SHORTSIZ16 ID,
                                         FLOATSIZ32 *min,
                                         FLOATSIZ32 *max,
                                         FLOATSIZ32 *def,
                                         FLOATSIZ32 *step)
SHORTSIZ16 e1432_get_tach_max_time_limits(E1432ID hw,
                                          SHORTSIZ16 ID,
                                          FLOATSIZ32 *min,
                                          FLOATSIZ32 *max,
                                          FLOATSIZ32 *def,
                                          FLOATSIZ32 *step)
SHORTSIZ16 e1432_get_tach_ppr_limits(E1432ID hw,
                                     SHORTSIZ16 ID,
                                     FLOATSIZ32 *min,
                                     FLOATSIZ32 *max,
                                     FLOATSIZ32 *def,
                                     FLOATSIZ32 *step)
SHORTSIZ16 e1432_get_trigger_level_limits(E1432ID hw,
                                          SHORTSIZ16 ID,
                                          SHORTSIZ16 which,
                                          FLOATSIZ32 *min,
                                          FLOATSIZ32 *max,
                                          FLOATSIZ32 *def,
                                          FLOATSIZ32 *step)
.cE
.SH DESCRIPTION
For every numerical parameter understood by the E1432 module, there is
a corresponding \fIe1432_get_xxx_limits\fR function.  This function
can be used by an application to provide appropriate limits on a
user-interface.  In general, the limits returned by this function
reflect the limits that the current hardware is capable of supporting.
In cases where several parameters interact, the interaction is
\fBnot\fR accounted for when providing the limits.

\fIhw\fR must be the result of a successful call to
\fIe1432_assign_channel_numbers\fR, and specifies the group of
hardware to talk to.

\fIID\fR is either the ID of a group of channels that was obtained
with a call to \fIe1432_create_channel_group\fR, or the ID of a single
channel.  If \fIID\fR is a group ID, then all channels in that group
must have the same parameter limits, or the function will return an
error.

Some parameters are global for an entire module, other parameters are
channel-specific.  For module-wide parameters, the channel or channels
specified by the \fIID\fR parameter are used only to determine which
E1432 module is being queried.  In the above list of functions,
\fIblocksize\fR through \fItriggers_per_arm\fR are module-wide
parameters, while \fIamp_scale\fR through \fItrigger_level\fR are
channel-specific.

\fImin\fR is a pointer to a 32-bit float which will be filled with the
minimum valid value for the parameter.

\fImax\fR is a pointer to a 32-bit float which will be filled with the
maximum valid value for the parameter.

\fIdef\fR is a pointer to a 32-bit float which will be filled with the
default (reset) value of the parameter.

\fIstep\fR is a pointer to a 32-bit float which will be filled with
the step-size between valid values of the parameter.

If the parameter can take on any floating-point value between the
\fImin\fR and \fImax\fR, then \fIstep\fR will be set to zero.  If the
parameter takes on discrete values that are evenly spaced, then
\fIstep\fR will be set to the spacing between valid values of the
parameter.  (For example, the interrupt priority can use any
of the values 0, 1, 2, 3, 4, 5, 6, or 7, so the \fIstep\fR is set to
\fB1\fR in this case.)  If the parameter takes on discrete values that
are not evenly spaced, then the \fIstep\fR is set to \fB-1\fR.

In some cases, there are no valid values for a parameter.  This
happens, for example, with \fIe1432_get_tach_holdoff_limits\fR when
the channel specified is not a tach channel.  In cases like this, the
\fImin\fR is set larger than \fImax\fR, and the \fIstep\fR is set to
\fB-2\fR.  The function does \fBnot\fR return an error in this case.

In general, the limit values returned will depend on what SCAs are
installed on the E1432, how much RAM is available on the E1432, and
what hardware options are present.

All of the functions documented on this manual page take exactly the
same form of parameters, except for
\fIe1432_get_trigger_level_limits\fR.  This function has an additional
parameter \fIwhich\fR, which must be one of
\fBE1432_TRIGGER_LEVEL_LOWER\fR or \fBE1432_TRIGGER_LEVEL_UPPER\fR.

.SH "RESET VALUE"
Not applicable.
.SH "RETURN VALUE"
Return 0 if successful, a (negative) error number otherwise.
.SH "SEE ALSO"
e1432_get_blocksize_current_max, e1432_get_fifo_size_current_max
